﻿using System;
using System.Collections.Generic;
//
namespace PerceptiveMCAPI.Types
{
	public class campaignStatsResults
	{
		public int syntax_errors { get; set; }
		public int hard_bounces { get; set; }
		public int soft_bounces { get; set; }
		public int unsubscribes { get; set; }
		public int abuse_reports { get; set; }
		public int forwards { get; set; }
		public int forwards_opens { get; set; }
		public int opens { get; set; }
		public DateTime last_open { get; set; }
		public int unique_opens { get; set; }
		public int clicks { get; set; }
		public int unique_clicks { get; set; }
		public DateTime last_click { get; set; }
		public int users_who_clicked { get; set; }
		public int emails_sent { get; set; }
		public absplit_stats absplit { get; set; }
		public List<timewarp_stats> timewarp { get; set; }
		// 
		// -------------------------------------------------
		public campaignStatsResults()
		{
			last_open = DateTime.MinValue;
			last_click = DateTime.MinValue;
			absplit = new absplit_stats();
			timewarp = new List<timewarp_stats>();
		}
		// -------------------------------------------------
		public class absplit_stats
		{
			public int bounces_a { get; set; }
			public int forwards_a { get; set; }
			public int abuse_reports_a { get; set; }
			public int unsubs_a { get; set; }
			public int recipients_click_a { get; set; }
			public int forwards_opens_a { get; set; }
			//
			public int bounces_b { get; set; }
			public int forwards_b { get; set; }
			public int abuse_reports_b { get; set; }
			public int unsubs_b { get; set; }
			public int recipients_click_b { get; set; }
			public int forwards_opens_b { get; set; }
		}
		// -------------------------------------------------
		public class timewarp_stats
		{
			public int utc_offset { get; set; }
			public int opens { get; set; }
			public DateTime last_open { get; set; }
			public int unique_opens { get; set; }
			public int clicks { get; set; }
			public DateTime last_click { get; set; }
			public int unique_clicks { get; set; }
			public int bounces { get; set; }
			public int total { get; set; }
			public int sent { get; set; }
			//
			public timewarp_stats()
			{
				last_open = DateTime.MinValue;
				last_click = DateTime.MinValue;
			}
		}
	}
}
